package ysu.sxm.ptjc.Dao;

import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
import ysu.sxm.ptjc.pojo.ProduceInfo;
import ysu.sxm.ptjc.Domin.baseInput;

import java.sql.Date;
import java.util.List;

@Repository
@Mapper
public interface produceInfoDao {
    List<ProduceInfo> getProdeuceInfoByDate(Date date);
    List<ProduceInfo> getProdeuceInfo();
    void insertProduceInfo(ProduceInfo produceInfo);
    void updateProduceInfo(ProduceInfo produceInfo);
    int getnumByOthers(baseInput b);
    ProduceInfo findOneByProduceIdAndLineid(Integer id,int lineid);
    ProduceInfo findOneByProduceId(Integer id);
    //通过产品编号获取对象
    List<ProduceInfo> getProduceInfoByProduceNum(String produceNum);
    //通过生产日期和产品编号限定对象
    List<ProduceInfo> getProduceInfoByNumAndDate(@Param("date") Date date, @Param("num") String produceNum);
    //根据产品类型、产品编号、生产日期限定对象
    List<ProduceInfo> getProduceInfoByTypeNumDate(@Param("start") Date start,@Param("end") Date end, @Param("produceNum") String produceNum,@Param("produceType") String produceType);
    void delete();
    //void insertProduceInfoByList(@Param("list") List<ProduceInfo> produceInfo);
//    void insertProduceInfoByList(@Param("list") List<ProduceInfo> produceInfo);
    //通过日期获取不重复产品编号的对象
    List<ProduceInfo> getProdeuceInfoByDate02(@Param("date") Date date);
}
